const express = require('express');
const utility = require('utility');
const jwt = require('jsonwebtoken');

const router = express.Router();
const db = require("../db");


//    注册
router.post("/reguser", function(req, res) {
  // 1.获取数据：曾经 req.on("data") 
  //  req.body：了解
  //      先加密一次 32字符串
  //      前4位截取 拼接后面
  //      二次加密
  req.body.password = utility.md5(req.body.password);

  // 2.把数据添加数据库
  db(`insert into user set ?`, req.body, function(err) {
    if (err != null) {
      res.send({ //无需设置请求头 ，和转换为JSON
        "status": 1,
        "message": "注册失败！"
      });
    }
    // 
    else {
      res.send({
        "status": 0,
        "message": "注册成功！"
      });
    }
  });


});


//     登录：
router.post("/login", function(req, res) {
  // 1.获取数据
  req.body.password = utility.md5(req.body.password);


  // 2.把数据添加数据库
  db(`select * from user where username=? and password=?`, [req.body.username, req.body.password], function(err, arr) {
    if (err != null) {
      res.send({
        "status": 1,
        "message": "登录失败！"
      });
    }
    // 
    else {

      if (arr.length != 0) {
        // 语法规定
        let token = "Bearer " + jwt.sign({ userId: arr[0].id }, 'token130', { expiresIn: '2h' });
        res.send({
          "status": 0,
          "message": "登录成功！",
          "token": token
        });
      } else {
        res.send({
          "status": 1,
          "message": "账号或密码输入错误！"
        });
      }

    }
  });


});




module.exports = router;